Add gtk_editable_get_delegate
authorMatthias Clasen <mclasen@redhat.com>
Mon, 19 Oct 2020 16:36:54 +0000 (12:36 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 19 Oct 2020 16:36:54 +0000 (12:36 -0400)
We need access to the delegate in the a11y layer,
so we might as well make this function public.

docs/reference/gtk/gtk4-sections.txt
gtk/gtkeditable.c
gtk/gtkeditable.h

index bf33adde326a712606b830efdf2b0bff68bc21e3..a0e123947b912466c0be6caeff3777c6aa5a0423 100644 (file)
@@ -971,6 +971,7 @@ gtk_editable_get_enable_undo
 gtk_editable_set_enable_undo
 <SUBSECTION>
 gtk_editable_install_properties
+gtk_editable_get_delegate
 gtk_editable_init_delegate
 gtk_editable_finish_delegate
 gtk_editable_delegate_set_property
index af0325f80f5b54bb4c120fbe5e6b506168457c79..eae161c542885921b2feac372b6054f28a7adac3 100644 (file)
@@ -941,6 +941,21 @@ delegate_notify (GObject    *object,
     g_object_notify (data, pspec->name);
 }
 
+/**
+ * gtk_editable_get_delegate:
+ * @editable: a #GtkEditable
+ *
+ * Gets the #GtkEditable that @editable is delegating its
+ * implementation to. Typically, the delegate is a #GtkText widget.
+ *
+ * Returns: (nullable) (transfer none): the delegate #GtkEditable
+ */
+GtkEditable *
+gtk_editable_get_delegate (GtkEditable *editable)
+{
+  return get_delegate (editable);
+}
+
 /**
  * gtk_editable_init_delegate:
  * @editable: a #GtkEditable
index 2e3f886f5656e47f97d51ed392f9107e2b021a3a..4ca68e44a7709d688891ea7dbedf5bb1574c64ce 100644 (file)
@@ -162,6 +162,8 @@ GDK_AVAILABLE_IN_ALL
 guint        gtk_editable_install_properties    (GObjectClass *object_class,
                                                  guint         first_prop);
 GDK_AVAILABLE_IN_ALL
+GtkEditable *gtk_editable_get_delegate          (GtkEditable *editable);
+GDK_AVAILABLE_IN_ALL
 void         gtk_editable_init_delegate         (GtkEditable  *editable);
 GDK_AVAILABLE_IN_ALL
 void         gtk_editable_finish_delegate       (GtkEditable  *editable);